package com.chen.dao;

import com.chen.pojo.Vip;
import com.chen.vo.VipVo;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

public interface VipMapper {
//    //根据id查询会员
//
//    List<Vip> queryVipById();
    //查询所有会员信息
    @Select("select * from csrsystem.csrsystem_vip ")
    List<Vip> queryAllVip();
//
//    //增加一个会员
//    int addVip(Vip vip);
//    //通过id删除一个会员
//    @Delete("delete from csrsystem.csrsystem_vip where vip_id = #{vipId}")
//    int deleteVipById(@Param("vipId") int vipId);
//    //修改一个会员
//    int updateVip(Vip vip);


    /**
     * 登录
     * @param vipNo
     * @return
     */
    @Select("select * from csrsystem.csrsystem_vip where vip_no = #{vipNo}")
    Vip login(String vipNo);

    /**
     * 查询员工列表
     * @param vipVo
     * @return
     */
    List<Vip> findEmployeeList(VipVo vipVo);

    /**
     * 添加员工
     * @param vip
     * @return
     */
    int addEmployee(Vip vip);

    /**
     * 修改员工信息
     * @param vip
     * @return
     */
    int updateEmployee(Vip vip);

    /**
     * 删除员工信息
     * @param vipId
     * @return
     */
    @Delete("delete from csrsystem.csrsystem_vip where vip_id = #{vipId}")
    int deleteById(@Param("vipId") Integer vipId);

    /**
     * 删除员工角色关系数据
     * @param vid
     */
    @Delete("delete from csrsystem.csrsystem_role_vip  where vid= #{vid}")
    void deleteEmployeeAndRole(@Param("vid") Integer vid);

    /**
     * 保存员工角色关系数据
     * @param roleId
     * @param empId
     */
    @Insert("insert into csrsystem.csrsystem_role_vip (rid,vid) values(#{roleId},#{empId})")
    void addEmployeeRole(@Param("roleId") String roleId, @Param("empId") Integer empId);

    /**
     * 注册用户
     * @param vip
     * @return
     */
    int addVip(Vip vip);

    /**
     * 根据学号查询会员信息
     * @param vipNo
     * @return
     */
    Vip findVipByNo(String vipNo);

    /**
     * 查询会员列表
     * @param vipVo
     * @return
     */
    List<Vip> findVipList(VipVo vipVo);

    /**
     * 添加会员
     * @param vip
     * @return
     */
    int addVipHo(Vip vip);

    /**
     * 修改会员信息
     * @param vip
     * @return
     */
    int updateVip(Vip vip);
}
